MPV file parsing method and apparatus, and storage medium therefor

ABSTRACT

A method and apparatus are provided for parsing a MultiPhotoVideo or MusicPhotoVideo (MPV) file in a multimedia application environment, and a storage medium having recorded thereon a computer readable program for performing the method. The method includes: detecting assets and/or elements and/or metadata included in an MPV file; forming tree-based data, which has a tree-like structure, corresponding to the MPV file based on correlations between the detected assets and/or elements and/or metadata; storing the formed tree-based data; and parsing the MPV file using the stored tree-based data. Accordingly, even if the MPV file has a complicated format, an MPV parser can easily parse the MPV file.

CROSS-REFERENCE TO RELATED PATENT APPLICATIONS

This application claims priority from Korean Patent Application No.10-2004-0067093, filed on Aug. 25, 2004 in the Korean IntellectualProperty Office, and U.S. Provisional Patent Application No. 60/558,549,filed on Apr. 2, 2004, the disclosures of which are incorporated hereinin their entirety by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Apparatuses and methods consistent with the present invention relate toa method and apparatus for parsing a MultiPhotoVideo or MusicPhotoVideo(MPV) file in a multimedia application environment, and a storage mediumhaving recorded thereon a computer readable program for performing themethod.

2. Description of the Related Art

In order to reinforce interoperability between multimedia contentreproducing devices, such as personal computers (PCs), and multimediacontent creating devices, standardization of an MPV specification hasbeen proposed by the Optical Storage Technology Association (OSTA) andthe International Imaging Industry Association (I3A).

The aim of the MPV specification is to allow multimedia data, such asdigital photos, video, audio, text, and documents, to be easily managed,reproduced, and exchanged in Consumer Electronics (CE) devices andInformation Technology (IT) devices.

The MPV specification is defined as an MPV core and profiles using theMPV core. The MPV core includes the following elements: a collection,metadata, and an identifier. The collection includes the followingelements: a manifest, an album, an asset list (AssetList), and markedassets (MarkedAssets). The manifest is obtained by grouping all of MPVelements to process and reproduce content, such as digital photos,video, and audio, stored in a storage medium or a storage device, suchas an optical disc, a memory card, or a hard disc, or exchanged throughan Internet protocol. The manifest is defined as an independenteXtensible Markup Language (XML) document. The metadata follows an XMLformat and can use a last uniform resource locator (LastURL), aninstance identification (InstanceID), a document identification(DocumentID), and a content identification (ContentID) fordiscrimination. Also, in the profiles, a basic profile, a presentationprofile, and a music profile are defined.

In this manner, the MPV specification considers a variety of creatablemultimedia contents for interoperability between a plurality ofmultimedia content reproducing devices and a plurality of multimediacontent creating devices. Therefore, MPV files can have a plurality offormats based on specifications of multimedia content creating devices.That is, an MPV file can have a simple format or a complicated formatfor inside referring to each other based on content.

Therefore, a multimedia content reproducing device should parse the MPVfile in various terms. That is, the multimedia content reproducingdevice should easily parse the number of assets included in the MPVfile, types of the included assets, and types of included metadataregardless of formats of the MPV file.

SUMMARY OF THE INVENTION

The present invention provides a MultiPhotoVideo or MusicPhotoVideo(MPV) file parsing method and apparatus that easily enables parsing ofan MPV file based on a tree-like structure in a multimedia applicationenvironment, and a storage medium having recorded thereon a computerreadable program for performing the method.

According to an aspect of the present invention, there is provided anMPV file parsing method comprising: detecting at least one of assets,elements and metadata included in an MPV file; forming tree-based data,which has a tree-like structure, corresponding to the MPV file based oncorrelations between the at least one of assets, elements and metadatawhich are detected; storing the tree-based data; and parsing the MPVfile using the stored tree-based data.

In the detecting, the at least one of assets, elements and metadata maybe detected from the MPV file based on XML.

In the forming of the tree-based data, the tree-based data may be formedon the basis of correlations between at least one asset, element andmetadata detected in the MPV file and at least one of assets, elementsand metadata which were detected previously.

According to another aspect of the present invention, there is providedan MPV file parsing apparatus comprising: an XML parser which parses anMPV file based on XML, detects at least one of assets, elements andmetadata included in the MPV file, and forms tree-based data, which hasa tree-like structure, corresponding to the MPV file based oncorrelations between the at least one of assets, elements and metadatawhich are detected; a storage unit which stores the tree-based dataformed by the XML parser; and an MPV parser which parses the MPV filebased on the tree-based data stored in the storage unit.

Further, the XML parser may define a location of at least one of anasset, an element and metadata which is detected in the tree-likestructure based on correlations between the at least one of an asset, anelement and metadata and at least one of assets, elements and metadatawhich were detected previously.

According to another aspect of the present invention, there is provideda storage medium having recorded thereon a computer readable program forperforming an MPV file parsing method in a multimedia applicationenvironment, the MPV file parsing method comprising: detecting at leastone of assets, elements and metadata included in an MPV file; formingtree-based data, which has a tree-like structure, corresponding to theMPV file based on correlations between the at least one of assets,elements and metadata which are detected; storing the tree-based data;and parsing the MPV file using the stored tree-based data.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects of the present invention will become moreapparent by describing in detail exemplary embodiments thereof withreference to the attached drawings in which:

FIG. 1 is a block diagram of a multimedia content reproducing devicehaving an MPV file parsing apparatus according to an exemplaryembodiment of the present invention;

FIG. 2 is an example of a simple MPV file;

FIG. 3 is a tree-like structure corresponding to the MPV file shown inFIG. 2 formed by an XML parser shown in FIG. 1;

FIG. 4 is an example of a simple MPV file having metadata;

FIG. 5 is a tree-like structure corresponding to the MPV file shown inFIG. 4 formed by the XML parser shown in FIG. 1;

FIG. 6 is an example of an MPV file having asset of<mpv:StillMultishotSequence>;

FIG. 7 is a tree-like structure corresponding to the MPV file shown inFIG. 6 formed by the XML parser shown in FIG. 1;

FIG. 8 is an example of an MPV file having asset of<mpv:StillWithAudio>;

FIG. 9 is a tree-like structure corresponding to the MPV file shown inFIG. 8 formed by the XML parser shown in FIG. 1;

FIG. 10 is an example of an MPV file having asset of<mpv:AudioWithStill>;

FIG. 11 is a tree-like structure corresponding to the MPV file shown inFIG. 10 formed by the XML parser shown in FIG. 1;

FIG. 12 is an example of an MPV file having asset of <mpv: Seq>;

FIG. 13 is a tree-like structure corresponding to the MPV file shown inFIG. 12 formed by the XML parser shown in FIG. 1; and

FIG. 14 is a flowchart illustrating an MPV file parsing method accordingto an exemplary embodiment of the present invention.

DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

Hereinafter, exemplary embodiments of the present invention will now bedescribed more fully with reference to the accompanying drawings.

FIG. 1 is a block diagram of a multimedia content reproducing devicehaving an MPV file parsing apparatus 110 according to an exemplaryembodiment of the present invention. The multimedia content reproducingdevice shown in FIG. 1 may be a CE device, such as a DVD player, a DVDrecorder, or an MP3 player, or an IT device such as a PC.

Referring to FIG. 1, the multimedia content reproducing device includesa storage medium 100, the MPV file parsing apparatus 110, a reproducingcontroller 120, and an output unit 130.

The storage medium 100 stores an MPV file 101, which is parsed by theMPV file parsing apparatus 110, and content 102, which is referred bythe MPV file 101 and reproduced by the reproducing controller 120. Thecontent 102 may be multimedia content. The storage medium 100 may be amemory, a memory stick, an optical disc, or a hard disc.

The MPV file 101 can have a simple format having a simple asset or acomplicated format having a composite asset. The simple asset may be<mpv:Still>, <mpv:Video>, <mpv:Audio>, or <mpv:ManifestLink>. The simpleasset generally has actual media data for providing to an end user. Thecomposite asset may be <mpv:StillMultiShotSequence>,<mpv:StillPanoramaSequence>, <mpv:StillWithAudio>, <mpv:AudioWithStill>, <mpv:Seq>, or <mpv:Par>. The composite asset has atleast one reference to other assets and does not have actual media data.

The MPV file parsing apparatus 110 reads the MPV file 101 from thestorage medium 100, parses various kinds of assets and metadata includedin the MPV file 101, and transmits a reproducing control signal thatenables reproduction of the content 102 stored in the storage medium 100to the reproducing controller 120.

In order to provide these functions, the MPV file parsing apparatus 110includes an XML parser 111, a storage unit 112, and an MPV parser 113.

When the XML parser 111 receives the MPV file 101 read from the storagemedium 100, the XML parser 111 sequentially parses the MPV file 101based on the XML, and whenever an asset, an element, or metadata isdetected, the XML parser 111 defines a correlation between the detectedasset, element, or metadata and a previously detected asset, element, ormetadata and forms tree-based data having a tree-like structurecorresponding to the MPV file 101.

For example, when the MPV file 101 has three assets as shown in FIG. 2,types of all assets are <mpv:Still>, and the assets are XML-baseddocuments of the simple format, which do not have metadata informationexcept LastURL, since <nmf:Metadata> 302 is detected after Manifest isdetected, the XML parser 111 places <nmf:Metadata> 302 in a lower layerof <file:Manifest> 301 in the highest layer, <file:ManifestProperties>303 in a lower layer of <nmf:Metadata> 302, <file:ProfileBag> 304 in alower layer of <file:ManifestProperties> 303, and<http://ns.osta.org/mpv/basic/1.0/> 305, which is the metadata, in alower layer of <file:ProfileBag> 304 as shown in FIG. 3.

Also, since <mpv:AssetList> 306 is detected in the same layer of<nmf:Metadata> 302, the XML parser 111 forms tree-based data having atree-like structure corresponding to the MPV file 101 shown in FIG. 2 byplacing <mpv:AssetList> 306 in the same layer of <nmf:Metadata> 302 andsimultaneously a lower layer of <file:Manifest> 301, placing <mpv:Still>assets 307, 308, and 309, which are detected in a lower layer of<mpv:AssetList> 306, in the lower layer of <mpv:AssetList> 306, andplacing LastURLs, which are detected in a lower layer of <mpv:Still>assets 307, 308, and 309, in the lower layer of <mpv:Still> assets 307,308, and 309, respectively, as shown in FIG. 3.

When the MPV file 101 has one asset as shown in FIG. 4, a type of theasset is <mpv:Still>, and the asset has a plurality of metadata, the XMLparser 111 parses the MPV file 101 as described above and formstree-based data having a tree-like structure shown in FIG. 5 based onthe parsing results.

In the tree-like structure shown in FIG. 5, <file:Manifest> 501 is inthe highest layer, <nmf:Metadata> 502 and <mpv:AssetList> 503 arelocated in a lower layer of <file:Manifest> 501, <mpv:Still> 504, whoseID is “still001,” is located in a lower layer of <mpv:AssetList> 503,<nmf:Metadata> 505 and <mpv:LastURL> 506 are located in a lower layer of<mpv:Still> 504, and <dc:Properties> 507 and <dcterms:Properties> 508are located in a lower layer of <nmf:Metadata> 505.

When the MPV file 101 is a composite asset corresponding to<mpv:StillMultiShotSequence> as shown in FIG. 6, the XML parser 111parses the MPV file 101 and forms tree-based data having a tree-likestructure shown in FIG. 7.

When the MPV file 101 has one <mpv:StillWithAudio> and two referredassets <mpv:Still> and <mpv:Audio> as shown in FIG. 8, the XML parser111 forms tree-based data having a tree-like structure corresponding tothe MPV file 101 as shown in FIG. 9.

When the MPV file 101 includes an asset of <mpvm:AudioWithStills> inwhich one XML namespace prefix is “mpvm” as shown in FIG. 10, the XMLparser 111 forms tree-based data having a tree-like structurecorresponding to the MPV file 101 as shown in FIG. 11.

When the MPV file 101 is a composite asset corresponding to <mpv:Seq> asshown in FIG. 12, the XML parser 111 forms tree-based data having atree-like structure corresponding to the MPV file 101 as shown in FIG.13.

The formed tree-based data having a tree-like structure corresponding tothe MPV file 101 is stored in the storage unit 112.

The MPV parser 113 obtains a parsing result of the MPV file 101 byparsing the tree-based data stored in the storage unit 112 and transmitsa reproducing control signal based on the obtained result to thereproducing controller 120.

If the reproducing controller 120 receives the reproducing controlsignal from the MPV parser 113, the reproducing controller 120 controlsthe multimedia content reproducing device so that the content 102 storedin the storage medium 100 can be reproduced on the basis of the receivedreproducing control signal.

The output unit 130 outputs content corresponding to images, such asdigital photos, and/or content corresponding to an audio signal and/ordocuments provided from the reproducing controller 120.

FIG. 14 is a flowchart illustrating an MPV file parsing method accordingto an exemplary embodiment of the present invention.

Referring to FIG. 14, an MPV file 101 stored in the storage medium 100is read in operation 1401. The MPV file 101 can have various formatsshown in FIGS. 2, 4, 6, 8, 10, and 12. Assets and/or elements and/ormetadata included in the MPV file 101 are detected on the basis of theXML in read order in operation 1402.

Tree-based data having a tree-like structure corresponding to the MPVfile 101 is formed on the basis of correlations between the detectedassets and/or elements and/or metadata in operation 1403. The formedtree-based data is stored in operation 1404. The MPV file 101 is parsedon the basis of the stored tree-based data in operation 1405.

When the tree-based data having a tree-like structure corresponding tothe MPV file 101 is formed, whenever an asset and/or an element and/ormetadata included in the MPV file 101 are detected, locations of thedetected asset and/or element and/or metadata in the tree-like structurecan be defined on the basis of correlations between the detected assetand/or element and/or metadata and previously detected assets and/orelements and/or metadata.

The method according to aspects of the present invention may be embodiedin a general-purpose computer by running a program from acomputer-readable medium, including but not limited to storage mediasuch as magnetic storage media (ROMs, RAMs, floppy disks, magnetictapes, etc.), optically readable media (CD-ROMs, DVDs, etc.), andcarrier waves (transmission over the internet).

Aspects of the present invention may be embodied as a computer-readableprogram code unit recorded on a computer-readable medium, and thecomputer-readable program code can be executed in a distributed mannerin a computer network. The functional programs, codes and code segmentsfor embodying the present invention may be easily deducted byprogrammers in the art to which the present invention belongs.

As described above, according to exemplary embodiments of the presentinvention, an XML parser parses an MPV file, forms tree-based datahaving a tree-like structure corresponding to the MPV file, and storesthe formed tree-based data. Accordingly, an MPV parser parses thetree-based MPV file according to demands. Therefore, even if the MPVfile has a complicated format, the MPV parser can easily parse the MPVfile. Accordingly, a load of the MPV parser due to the MPV file parsingcan be reduced.

Also, navigation of each element included in the MPV file can be easilyperformed by performing the MPV file parsing based on the tree-baseddata.

In addition, the XML parser can be prevented from repeatedly parsing theMPV file by saving a result obtained by parsing the MPV file using theXML parser and by using the saved result.

While aspects of this invention has been particularly shown anddescribed with reference to exemplary embodiments thereof, it will beunderstood by those skilled in the art that various changes in form anddetails may be made therein without departing from the spirit and scopeof the invention as defined by the appended claims. Therefore, the scopeof the invention is defined not by the detailed description of theexemplary embodiments but by the appended claims, and all differenceswithin the scope will be construed as being included in the presentinvention.

1. A MultiPhotoVideo or MusicPhotoVideo (MPV) file parsing methodcomprising: detecting at least one of assets, elements and metadataincluded in an MPV file; forming tree-based data, which has a tree-likestructure, corresponding to the MPV file based on correlations betweenthe at least one of assets, elements and metadata which are detected;storing the tree-based data; and parsing the MPV file using the storedtree-based data.
 2. The method of claim 1, wherein in the detecting, theat least one of assets, elements and metadata are detected in the MPVfile based on extensible Markup Language (XML).
 3. The method of claim1, wherein in the forming of the tree-based data, the tree-based data isformed on the basis of correlations between at least one asset, elementand metadata detected in the MPV file and at least one of assets,elements and metadata which were detected previously.
 4. AMultiPhotoVideo or MusicPhotoVideo (MPV) file parsing apparatuscomprising: an XML parser which parses an MPV file based on XML, detectsat least one of assets, elements and metadata included in the MPV file,and forms tree-based data, which has a tree-like structure,corresponding to the MPV file based on correlations between the at leastone of assets, elements and metadata which are detected; a storage unitwhich stores the tree-based data formed by the XML parser; and an MPVparser which parses the MPV file based on the tree-based data stored inthe storage unit.
 5. The apparatus of claim 4, wherein the XML parserdefines a location of at least one of an asset, an element and metadatawhich is detected in the tree-like structure based on correlationsbetween the at least one of an asset, an element and metadata and atleast one of assets, elements and metadata which were detectedpreviously.
 6. A storage medium having recorded thereon a computerreadable program for performing a MultiPhotoVideo or MusicPhotoVideo(MPV) file parsing method in a multimedia application environment, theMPV file parsing method comprising: detecting at least one of assets,elements and metadata included in an MPV file; forming tree-based data,which has a tree-like structure, corresponding to the MPV file based oncorrelations between the at least one of assets, elements and metadatawhich are detected; storing the tree-based data; and parsing the MPVfile using the stored tree-based data.